package com.zc.im.mapper.user;

import com.zc.im.model.user.ZcOwnResume;
import com.zc.im.model.user.ZcOwnResumeExample;
import com.zc.im.model.user.ZcOwnResumeKey;
import com.zc.im.model.user.ZcOwnResumeWithBLOBs;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.SelectKey;
import org.apache.ibatis.annotations.Update;

public interface ZcOwnResumeMapper {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int countByExample(ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int deleteByExample(ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    @Delete({
        "delete from zc_own_resume",
        "where id = #{id,jdbcType=INTEGER}"
    })
    int deleteByPrimaryKey(ZcOwnResumeKey key);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    @Insert({
        "insert into zc_own_resume (id, uid, ",
        "display, display_nickname, ",
        "pic_head, audit, ",
        "fullname, gender, ",
        "h_province, h_city, ",
        "h_area, h_street, ",
        "h_province_cn, province, ",
        "city, area, street, ",
        "province_cn, education, ",
        "experience, position, ",
        "position_cn, address, ",
        "industry, salary, ",
        "boss_character, boss_bloodtype, ",
        "boss_constellation, boss_thefiveline, ",
        "lead_character, lead_bloodtype, ",
        "lead_constellation, lead_thefiveline, ",
        "welfare, present_type, ",
        "email, is_email, to_time, ",
        "age, click, page_id, ",
        "page_id_old, graduates, ",
        "work_year, star, star1, ",
        "star2, star3, top, ",
        "marriage, nature, update_time, ",
        "source, recommend, ",
        "admin_label, rest_type, forenoon, ",
        "afternoon, id_card, ",
        "is_overtime, is_single, account_type, ",
        "politics_status, promotion_position, ",
        "resume_link, hobby, ",
        "plan, mark_id, company_eve, ",
        "describe)",
        "values (#{id,jdbcType=INTEGER}, #{uid,jdbcType=INTEGER}, ",
        "#{display,jdbcType=TINYINT}, #{displayNickname,jdbcType=TINYINT}, ",
        "#{picHead,jdbcType=VARCHAR}, #{audit,jdbcType=TINYINT}, ",
        "#{fullname,jdbcType=VARCHAR}, #{gender,jdbcType=TINYINT}, ",
        "#{hProvince,jdbcType=VARCHAR}, #{hCity,jdbcType=VARCHAR}, ",
        "#{hArea,jdbcType=VARCHAR}, #{hStreet,jdbcType=VARCHAR}, ",
        "#{hProvinceCn,jdbcType=VARCHAR}, #{province,jdbcType=VARCHAR}, ",
        "#{city,jdbcType=VARCHAR}, #{area,jdbcType=VARCHAR}, #{street,jdbcType=VARCHAR}, ",
        "#{provinceCn,jdbcType=VARCHAR}, #{education,jdbcType=TINYINT}, ",
        "#{experience,jdbcType=TINYINT}, #{position,jdbcType=VARCHAR}, ",
        "#{positionCn,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR}, ",
        "#{industry,jdbcType=TINYINT}, #{salary,jdbcType=TINYINT}, ",
        "#{bossCharacter,jdbcType=VARCHAR}, #{bossBloodtype,jdbcType=TINYINT}, ",
        "#{bossConstellation,jdbcType=TINYINT}, #{bossThefiveline,jdbcType=TINYINT}, ",
        "#{leadCharacter,jdbcType=VARCHAR}, #{leadBloodtype,jdbcType=TINYINT}, ",
        "#{leadConstellation,jdbcType=TINYINT}, #{leadThefiveline,jdbcType=TINYINT}, ",
        "#{welfare,jdbcType=VARCHAR}, #{presentType,jdbcType=TINYINT}, ",
        "#{email,jdbcType=VARCHAR}, #{isEmail,jdbcType=BIT}, #{toTime,jdbcType=TINYINT}, ",
        "#{age,jdbcType=VARCHAR}, #{click,jdbcType=INTEGER}, #{pageId,jdbcType=VARCHAR}, ",
        "#{pageIdOld,jdbcType=VARCHAR}, #{graduates,jdbcType=BIT}, ",
        "#{workYear,jdbcType=CHAR}, #{star,jdbcType=REAL}, #{star1,jdbcType=REAL}, ",
        "#{star2,jdbcType=REAL}, #{star3,jdbcType=REAL}, #{top,jdbcType=VARCHAR}, ",
        "#{marriage,jdbcType=BIT}, #{nature,jdbcType=BIT}, #{updateTime,jdbcType=INTEGER}, ",
        "#{source,jdbcType=VARCHAR}, #{recommend,jdbcType=TINYINT}, ",
        "#{adminLabel,jdbcType=BIT}, #{restType,jdbcType=BIT}, #{forenoon,jdbcType=VARCHAR}, ",
        "#{afternoon,jdbcType=VARCHAR}, #{idCard,jdbcType=VARCHAR}, ",
        "#{isOvertime,jdbcType=BIT}, #{isSingle,jdbcType=BIT}, #{accountType,jdbcType=BIT}, ",
        "#{politicsStatus,jdbcType=TINYINT}, #{promotionPosition,jdbcType=VARCHAR}, ",
        "#{resumeLink,jdbcType=VARCHAR}, #{hobby,jdbcType=VARCHAR}, ",
        "#{plan,jdbcType=VARCHAR}, #{markId,jdbcType=INTEGER}, #{companyEve,jdbcType=VARCHAR}, ",
        "#{describe,jdbcType=LONGVARCHAR})"
    })
    @SelectKey(statement="SELECT LAST_INSERT_ID()", keyProperty="id", before=true, resultType=Integer.class)
    int insert(ZcOwnResumeWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int insertSelective(ZcOwnResumeWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    List<ZcOwnResumeWithBLOBs> selectByExampleWithBLOBs(ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    List<ZcOwnResume> selectByExample(ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    @Select({
        "select",
        "id, uid, display, display_nickname, pic_head, audit, fullname, gender, h_province, ",
        "h_city, h_area, h_street, h_province_cn, province, city, area, street, province_cn, ",
        "education, experience, position, position_cn, address, industry, salary, boss_character, ",
        "boss_bloodtype, boss_constellation, boss_thefiveline, lead_character, lead_bloodtype, ",
        "lead_constellation, lead_thefiveline, welfare, present_type, email, is_email, ",
        "to_time, age, click, page_id, page_id_old, graduates, work_year, star, star1, ",
        "star2, star3, top, marriage, nature, update_time, source, recommend, admin_label, ",
        "rest_type, forenoon, afternoon, id_card, is_overtime, is_single, account_type, ",
        "politics_status, promotion_position, resume_link, hobby, plan, mark_id, company_eve, ",
        "describe",
        "from zc_own_resume",
        "where id = #{id,jdbcType=INTEGER}"
    })
    @ResultMap("ResultMapWithBLOBs")
    ZcOwnResumeWithBLOBs selectByPrimaryKey(ZcOwnResumeKey key);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int updateByExampleSelective(@Param("record") ZcOwnResumeWithBLOBs record, @Param("example") ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int updateByExampleWithBLOBs(@Param("record") ZcOwnResumeWithBLOBs record, @Param("example") ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int updateByExample(@Param("record") ZcOwnResume record, @Param("example") ZcOwnResumeExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    int updateByPrimaryKeySelective(ZcOwnResumeWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    @Update({
        "update zc_own_resume",
        "set uid = #{uid,jdbcType=INTEGER},",
          "display = #{display,jdbcType=TINYINT},",
          "display_nickname = #{displayNickname,jdbcType=TINYINT},",
          "pic_head = #{picHead,jdbcType=VARCHAR},",
          "audit = #{audit,jdbcType=TINYINT},",
          "fullname = #{fullname,jdbcType=VARCHAR},",
          "gender = #{gender,jdbcType=TINYINT},",
          "h_province = #{hProvince,jdbcType=VARCHAR},",
          "h_city = #{hCity,jdbcType=VARCHAR},",
          "h_area = #{hArea,jdbcType=VARCHAR},",
          "h_street = #{hStreet,jdbcType=VARCHAR},",
          "h_province_cn = #{hProvinceCn,jdbcType=VARCHAR},",
          "province = #{province,jdbcType=VARCHAR},",
          "city = #{city,jdbcType=VARCHAR},",
          "area = #{area,jdbcType=VARCHAR},",
          "street = #{street,jdbcType=VARCHAR},",
          "province_cn = #{provinceCn,jdbcType=VARCHAR},",
          "education = #{education,jdbcType=TINYINT},",
          "experience = #{experience,jdbcType=TINYINT},",
          "position = #{position,jdbcType=VARCHAR},",
          "position_cn = #{positionCn,jdbcType=VARCHAR},",
          "address = #{address,jdbcType=VARCHAR},",
          "industry = #{industry,jdbcType=TINYINT},",
          "salary = #{salary,jdbcType=TINYINT},",
          "boss_character = #{bossCharacter,jdbcType=VARCHAR},",
          "boss_bloodtype = #{bossBloodtype,jdbcType=TINYINT},",
          "boss_constellation = #{bossConstellation,jdbcType=TINYINT},",
          "boss_thefiveline = #{bossThefiveline,jdbcType=TINYINT},",
          "lead_character = #{leadCharacter,jdbcType=VARCHAR},",
          "lead_bloodtype = #{leadBloodtype,jdbcType=TINYINT},",
          "lead_constellation = #{leadConstellation,jdbcType=TINYINT},",
          "lead_thefiveline = #{leadThefiveline,jdbcType=TINYINT},",
          "welfare = #{welfare,jdbcType=VARCHAR},",
          "present_type = #{presentType,jdbcType=TINYINT},",
          "email = #{email,jdbcType=VARCHAR},",
          "is_email = #{isEmail,jdbcType=BIT},",
          "to_time = #{toTime,jdbcType=TINYINT},",
          "age = #{age,jdbcType=VARCHAR},",
          "click = #{click,jdbcType=INTEGER},",
          "page_id = #{pageId,jdbcType=VARCHAR},",
          "page_id_old = #{pageIdOld,jdbcType=VARCHAR},",
          "graduates = #{graduates,jdbcType=BIT},",
          "work_year = #{workYear,jdbcType=CHAR},",
          "star = #{star,jdbcType=REAL},",
          "star1 = #{star1,jdbcType=REAL},",
          "star2 = #{star2,jdbcType=REAL},",
          "star3 = #{star3,jdbcType=REAL},",
          "top = #{top,jdbcType=VARCHAR},",
          "marriage = #{marriage,jdbcType=BIT},",
          "nature = #{nature,jdbcType=BIT},",
          "update_time = #{updateTime,jdbcType=INTEGER},",
          "source = #{source,jdbcType=VARCHAR},",
          "recommend = #{recommend,jdbcType=TINYINT},",
          "admin_label = #{adminLabel,jdbcType=BIT},",
          "rest_type = #{restType,jdbcType=BIT},",
          "forenoon = #{forenoon,jdbcType=VARCHAR},",
          "afternoon = #{afternoon,jdbcType=VARCHAR},",
          "id_card = #{idCard,jdbcType=VARCHAR},",
          "is_overtime = #{isOvertime,jdbcType=BIT},",
          "is_single = #{isSingle,jdbcType=BIT},",
          "account_type = #{accountType,jdbcType=BIT},",
          "politics_status = #{politicsStatus,jdbcType=TINYINT},",
          "promotion_position = #{promotionPosition,jdbcType=VARCHAR},",
          "resume_link = #{resumeLink,jdbcType=VARCHAR},",
          "hobby = #{hobby,jdbcType=VARCHAR},",
          "plan = #{plan,jdbcType=VARCHAR},",
          "mark_id = #{markId,jdbcType=INTEGER},",
          "company_eve = #{companyEve,jdbcType=VARCHAR},",
          "describe = #{describe,jdbcType=LONGVARCHAR}",
        "where id = #{id,jdbcType=INTEGER}"
    })
    int updateByPrimaryKeyWithBLOBs(ZcOwnResumeWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table zc_own_resume
     *
     * @mbggenerated
     */
    @Update({
        "update zc_own_resume",
        "set uid = #{uid,jdbcType=INTEGER},",
          "display = #{display,jdbcType=TINYINT},",
          "display_nickname = #{displayNickname,jdbcType=TINYINT},",
          "pic_head = #{picHead,jdbcType=VARCHAR},",
          "audit = #{audit,jdbcType=TINYINT},",
          "fullname = #{fullname,jdbcType=VARCHAR},",
          "gender = #{gender,jdbcType=TINYINT},",
          "h_province = #{hProvince,jdbcType=VARCHAR},",
          "h_city = #{hCity,jdbcType=VARCHAR},",
          "h_area = #{hArea,jdbcType=VARCHAR},",
          "h_street = #{hStreet,jdbcType=VARCHAR},",
          "h_province_cn = #{hProvinceCn,jdbcType=VARCHAR},",
          "province = #{province,jdbcType=VARCHAR},",
          "city = #{city,jdbcType=VARCHAR},",
          "area = #{area,jdbcType=VARCHAR},",
          "street = #{street,jdbcType=VARCHAR},",
          "province_cn = #{provinceCn,jdbcType=VARCHAR},",
          "education = #{education,jdbcType=TINYINT},",
          "experience = #{experience,jdbcType=TINYINT},",
          "position = #{position,jdbcType=VARCHAR},",
          "position_cn = #{positionCn,jdbcType=VARCHAR},",
          "address = #{address,jdbcType=VARCHAR},",
          "industry = #{industry,jdbcType=TINYINT},",
          "salary = #{salary,jdbcType=TINYINT},",
          "boss_character = #{bossCharacter,jdbcType=VARCHAR},",
          "boss_bloodtype = #{bossBloodtype,jdbcType=TINYINT},",
          "boss_constellation = #{bossConstellation,jdbcType=TINYINT},",
          "boss_thefiveline = #{bossThefiveline,jdbcType=TINYINT},",
          "lead_character = #{leadCharacter,jdbcType=VARCHAR},",
          "lead_bloodtype = #{leadBloodtype,jdbcType=TINYINT},",
          "lead_constellation = #{leadConstellation,jdbcType=TINYINT},",
          "lead_thefiveline = #{leadThefiveline,jdbcType=TINYINT},",
          "welfare = #{welfare,jdbcType=VARCHAR},",
          "present_type = #{presentType,jdbcType=TINYINT},",
          "email = #{email,jdbcType=VARCHAR},",
          "is_email = #{isEmail,jdbcType=BIT},",
          "to_time = #{toTime,jdbcType=TINYINT},",
          "age = #{age,jdbcType=VARCHAR},",
          "click = #{click,jdbcType=INTEGER},",
          "page_id = #{pageId,jdbcType=VARCHAR},",
          "page_id_old = #{pageIdOld,jdbcType=VARCHAR},",
          "graduates = #{graduates,jdbcType=BIT},",
          "work_year = #{workYear,jdbcType=CHAR},",
          "star = #{star,jdbcType=REAL},",
          "star1 = #{star1,jdbcType=REAL},",
          "star2 = #{star2,jdbcType=REAL},",
          "star3 = #{star3,jdbcType=REAL},",
          "top = #{top,jdbcType=VARCHAR},",
          "marriage = #{marriage,jdbcType=BIT},",
          "nature = #{nature,jdbcType=BIT},",
          "update_time = #{updateTime,jdbcType=INTEGER},",
          "source = #{source,jdbcType=VARCHAR},",
          "recommend = #{recommend,jdbcType=TINYINT},",
          "admin_label = #{adminLabel,jdbcType=BIT},",
          "rest_type = #{restType,jdbcType=BIT},",
          "forenoon = #{forenoon,jdbcType=VARCHAR},",
          "afternoon = #{afternoon,jdbcType=VARCHAR},",
          "id_card = #{idCard,jdbcType=VARCHAR},",
          "is_overtime = #{isOvertime,jdbcType=BIT},",
          "is_single = #{isSingle,jdbcType=BIT},",
          "account_type = #{accountType,jdbcType=BIT},",
          "politics_status = #{politicsStatus,jdbcType=TINYINT},",
          "promotion_position = #{promotionPosition,jdbcType=VARCHAR},",
          "resume_link = #{resumeLink,jdbcType=VARCHAR},",
          "hobby = #{hobby,jdbcType=VARCHAR},",
          "plan = #{plan,jdbcType=VARCHAR},",
          "mark_id = #{markId,jdbcType=INTEGER},",
          "company_eve = #{companyEve,jdbcType=VARCHAR}",
        "where id = #{id,jdbcType=INTEGER}"
    })
    int updateByPrimaryKey(ZcOwnResume record);
}